package com.lemon.cloud.admin.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.lemon.cloud.admin.dto.UserDTO;
import com.lemon.cloud.comm.model.ResultMsg;
import com.lemon.cloud.comm.po.SysUser;
import com.lemon.cloud.admin.vo.UserVO;

public interface SysUserService extends IService<SysUser> {

    SysUser getUserByUsername(String username);

    SysUser getByMobile(String mobile);

    Boolean saveUser(UserDTO userDto);

    ResultMsg<Boolean> register(UserDTO dto);

    IPage<UserVO> getUserByPage(Page<UserVO> page, UserDTO userDTO);

    Boolean updateUser(UserDTO userDto);

    void forceOffline(Long id, String client);

    Boolean editUser(UserDTO userDto);
}

